package br.com.pedidos.servidor.converter;

import br.com.pedidos.servidor.dao.PedidoDAO;
import br.com.pedidos.servidor.entity.Pedido;
import br.com.pedidos.servidor.rn.PedidoRN;
import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.FacesConverter;

@FacesConverter("pedidoConverter")
public class PedidoConverter implements Converter {
    
    private PedidoRN pedidoRN;

    @Override
    public Object getAsObject(FacesContext context, UIComponent component, String value) {
        pedidoRN = new PedidoRN();
        Pedido pedido = null;
        if (value == null || value.isEmpty()) {
            return pedido;
        } else {
            pedido = pedidoRN.pedidoPorId(Long.valueOf(value));
            return pedido;
        }
    }

    @Override
    public String getAsString(FacesContext context, UIComponent component, Object value) {
        if (value == null) {
            return null;
        } else {
            if (value instanceof Pedido) {
                Pedido pedido = (Pedido) value;
                if (pedido.getId() != null) {
                    return pedido.getId().toString();
                } else {
                    return "";
                }
            } else {
                return "";
            }
        }
    }

}
